#include"StackQueue.h"
void test1()
{
	ST st;
	STInit(&st);
	STPush(&st, 1);
	STPush(&st, 2);
	STPush(&st, 3);
	STPush(&st, 4);

	while (!STEmpty(&st))
	{
		printf("%d ", STTop(&st));
		STPop(&st);
	}
	printf("\n");

	STDestroy(&st);
}
bool isValid(char* s)
{
	ST st;
	STInit(&st);
	while (*s)
	{
		if (*s == '(' || *s == '{' || *s == '[')
		{
			STPush(&st, *s);
		}
		else
		{
			if (STEmpty(&st))
			{
				STDestroy(&st);
				return false;
			}
			char* topVal = STTop(&st);
			STPop(&st);
			if ((*s == ')' && topVal != '(') ||
				(*s == ']' && topVal != '[') ||
				(*s == '}' && topVal != '{'))
			{
				STDestroy(&st);
				return false;
			}

		}
		s++;
	}
	if (!STEmpty(&st))
	{
		STDestroy(&st);
		return false;
	}
	STDestroy(&st);
	return true;
}
int main()
{
	test1();
	return 0;
}


